package com.hm.cms.share.service;

import java.util.List;
import java.util.Map;

import com.hm.cms.mongo.annotation.RecycleRecordAnnotation;
import com.hm.cms.mongo.domain.def.DbCmsDef;
import com.hm.cms.mongo.vo.CmsColumnVo;
import com.hm.common.model.PageInfo;
import com.hm.common.util.CommonDef.OperationRecord;

/**
 * @author shishun.wang
 * @date 下午2:38:37 2016年8月9日
 * @version 1.0
 * @describe
 */
public interface CmsColumnService {

	public CmsColumnVo getCmsColumn(String id);

	@RecycleRecordAnnotation(value = OperationRecord.STANDARD_NEW, documentDef = DbCmsDef.CMS_COLUMN)
	public String addCmsColumn(CmsColumnVo cmsColumnVo, String operationUser);

	@RecycleRecordAnnotation(value = OperationRecord.STANDARD_UPDATE, documentDef = DbCmsDef.CMS_COLUMN)
	public String updateCmsColumn(CmsColumnVo cmsColumnVo, String operationUser);

	@RecycleRecordAnnotation(value = OperationRecord.STANDARD_DELETE, documentDef = DbCmsDef.CMS_COLUMN)
	public String deleteCmsColumn(CmsColumnVo cmsColumnVo, String operationUser);

	public PageInfo<CmsColumnVo> queryCmsColumn(Integer pageNumber, Integer pageSize, String weibsite, String parenId);

	public List<Map<String, Object>> childsById(String parenId, String weibsite);
}
